﻿using System;
using System.Net;
using Hydra.Shell.Attributes;

namespace Hydra.Shell.Interfaces.EnvDTE
{
    [Guid("0BEAB46B-4C07-4F94-A8D7-1626020E4E53")]
    public interface Window
    {
        Windows Collection { get; }
        bool Visible { get; set; }
        int Left { get; set; }
        int Top { get; set; }
        int Width { get; set; }
        int Height { get; set; }
        //vsWindowState WindowState { get; set; }
        //void SetFocus();
        //vsWindowType Type { get; }
        //void SetKind(vsWindowType eKind);
        //EnvDTE.LinkedWindows LinkedWindows { get; }
        //Window LinkedWindowFrame { get; }
        //void Detach();
        //void Attach(int lWindowHandle);
        //int HWnd { get; }
        //string Kind { get; }
        //string ObjectKind { get; }
        //object Object { get; }
        //object this{ get; }
        //EnvDTE.ProjectItem ProjectItem { get; }
        //EnvDTE.Project Project { get; }
        //EnvDTE.DTE DTE { get; }
        //EnvDTE.Document Document { get; }
        //object Selection { get; }
        //bool Linkable { get; set; }
        //void Activate();
        //void Close(vsSaveChanges SaveChanges = 2);
        //string Caption { get; set; }
        //void SetSelectionContainer(ref object[] Objects);
        //bool IsFloating { get; set; }
        //bool AutoHides { get; set; }
        //void SetTabPicture(object Picture);
        //EnvDTE.ContextAttributes ContextAttributes { get; }
    }
}
